Methods and apparatus for high speed location determinations

ABSTRACT

Methods and apparatus for high speed location determinations are disclosed. An example apparatus includes at least two coils arranged along a zone of interest to generate a magnetic field, and a sensor to measure a change in the magnetic field associated with the at least two coils as an object of interest moves within or into the zone of interest. The example apparatus also includes a processor to determine a position of the object of interest based on the measured change.

RELATED APPLICATION

This patent arises as a continuation of U.S. patent application Ser. No.15/264,361, which was filed on Sep. 13, 2016. The foregoing U.S. PatentApplication is hereby incorporated herein by reference in its entirety.

FIELD OF THE DISCLOSURE

This disclosure relates generally to location determinations, and, moreparticularly, to methods and apparatus for high speed locationdeterminations.

BACKGROUND

In sporting events, such as hockey or soccer for example, an object ofinterest and/or sport implement such as a ball or a puck plays animportant role in determining an outcome of a game. For example, whethera puck travels across a goal line is an important determination inhockey. However, the speed at which the puck travels (e.g., 100 milesper hour (mph)) can make this important determination very difficultbased on visuals. For example, video replays captured by high-speedcameras are subject to occlusion, blurring and/or unclear/obstructedviewing angles that can that can make location determination of the puckdifficult for scoring determinations.

Some known systems utilize magnets and/or magnetic fields to determine alocation of a soccer ball near a goal line.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example sport application.

FIG. 2 illustrates a first example sport tracking system constructed inaccordance with teachings of this disclosure.

FIGS. 3A-3D illustrate example coil arrangements that may be implementedin the example sport tracking system of FIG. 2.

FIG. 4 illustrates another example sport tracking system constructed inaccordance with teachings of this disclosure.

FIG. 5 is a graph depicting a highly localized magnetic field gradientthat may be generated by examples disclosed herein.

FIGS. 6A-6C illustrate example sport implements that may be used in theexamples disclosed herein.

FIG. 7 illustrates an example implementation of an analyzer of FIGS. 2and/or 4.

FIG. 8 is a flowchart representative of example machine readableinstructions which may be executed to implement the example analyzer ofFIG. 7.

FIG. 9 is a flowchart representative of machine readable instructionswhich may be executed to calibrate the example analyzer of FIG. 7.

FIG. 10 is a processor platform that may be used to execute the exampleinstructions of FIGS. 8 and/or 9 to implement the example analyzer ofFIG. 7.

The figures are not to scale. Instead, to clarify multiple layers andregions, the thickness of the layers may be enlarged in the drawings.Wherever possible, the same reference numbers will be used throughoutthe drawing(s) and accompanying written description to refer to the sameor like parts. As used in this patent, stating that any part is in anyway positioned on (e.g., positioned on, located on, disposed on, orformed on, etc.) another part, means that the referenced part is eitherin contact with the other part, or that the referenced part is above theother part with one or more intermediate part(s) located therebetween.Stating that any part is in contact with another part means that thereis no intermediate part between the two parts.

DETAILED DESCRIPTION

Methods and apparatus for high speed location determinations aredisclosed. In sporting events (e.g., hockey, soccer, football, autoracing, running, etc.), an object of interest and/or sport implementsuch as a ball or a puck plays an important role in determining anoutcome of a game. However, the speed at which these objects can travel(e.g., greater than 100 miles per hour (mph)) may make conditionaldeterminations difficult (e.g., whether a team has scored). For example,video replays captured by high-speed cameras are subject to occlusion,blurring and/or unclear/obstructed viewing angles.

Some known positional tracking systems utilize magnets and/or magneticfields to determine a location of a soccer ball near a goal line.However, these systems are not generally able to determine an exactlocation or orientation/spin of the ball and, instead, only generallyindicate whether the ball has moved past a plane and/or a line (e.g., agoal line), but not whether an entire length/diameter of the ball haspassed. Further, these known systems are only able to determine thelocation of the soccer ball within a few centimeters (cm) and cannotgenerally track movement at a high velocity and/or take measurements ata data rate sufficiently high to accurately track a fast moving object.

Examples disclosed herein enable cost-effective, highly accurate andquick measurements of an object of interest (e.g., a ball, a puck, aperson, a vehicle, a drone, a robot, etc.). Some such examples disclosedherein utilize one or more coils spatially arranged in conjunction witha magnetic field sensor to determine a highly precise location of asport implement (e.g., a hockey puck, a ball, etc.). In some suchexamples, a magnetic field with a high corresponding magnetic fieldgradient is generated. As a result, such examples can accuratelydetermine whether any or all of the sport implement has passed a plane(e.g., whether an entire length of the sport implement has passed theplane). In some examples, a precise measurement of location of the sportimplement is determined (e.g., by determining position location beyondsimply whether the sport implement has broken/passed a plane).Additionally or alternatively, in some examples, a trajectory (e.g., aprojectile trajectory), a spin, a velocity and/or an orientation/tilt isdetermined.

As used herein, the term “sport implement” encompasses objects such asballs (e.g., soccer balls, footballs, golf balls, etc.), pucks (e.g.,hockey pucks), automobiles, boats, drones in which location movementsare relevant to outcome determinations including such as scoringdeterminations. As used herein, the term “zone of interest” refers to aregion that is to be monitored for a presence and/or movement of anobject, such as an area, a line (e.g., to be passed), a surface and/or avolume, etc. For example, the term “zone of interest” may encompass agoal line, a goal structure, a net, a finish line, a field goal uprightand/or a foul line, etc.

FIG. 1 illustrates an example sport application. According to theillustrated example, a goal (e.g., a hockey goal) 100 includes frame 102with uprights 106 as well as a crossbar 108. In this example, theuprights 106 as well as the cross bar 108 define a zone of interest 109,which can be a plane, but in this example is a volume. In this example,the zone of interest 109 is a region pertinent to a determination ofwhether a score/goal has been made.

As can be seen in the illustrated view of FIG. 1, an example puck 110 isshown in detail. The example puck 110 has multiple axes (e.g.,orthogonal axes in x, y and z coordinate systems) of movement 112 aswell as axes (e.g., orthogonal axes) of rotation 114. In addition todetermining whether the puck 110 has entered the zone of interest 109,examples disclosed herein may be also used to track position(s), speed,acceleration and/or rotation(s) of the puck 110. In some examples, thespin along any or all of the axes 114 as well as a projectile velocity(e.g., as the puck 110 flies above or along a surface) is alsodetermined and/or calculated.

In this example, whether an entire length/diameter of the example puck100 has passed a front plane of the region of interest 109 is pertinentto whether a score (e.g., a goal) has been made. Accordingly, examplesdisclosed herein not only can determine whether the puck 110 has enteredthe zone of interest 109, but also may determine whether an entirediameter/length of the puck 110 has entered the zone of interest 109 (anentire length of the puck 110 within the zone of interest 109) and atime and/or time differential history associated with such a movement.

While examples described herein are shown in the context of hockey,teachings of this disclosure may be applied to many other sportapplication or non-sport application(s). For example, teachings of thisdisclosure may be applied to football to determine whether a football,which has a generally non-axisymmetric oblong shape, has broken an endzone plane. Additionally or alternatively, teachings of this disclosuremay be used to determine a projectile trajectory of the football and/ora proximity of the football to an upright during a field goal attempt,for example. Beyond sport applications, teachings of this disclosure maybe applied to location/movement tracking of objects such as fast movingdrones, robots, items moving through a warehouse, etc.

FIG. 2 illustrates an example sport tracking system 200 constructed inaccordance with the teaching of this disclosure. The sport trackingsystem 200 of the illustrated example includes a goal frame 202, a puck(e.g., a magnetic puck) 204, which is depicted at two different times(time 1 in solid, time 2 in dashed lines), a first coil 210, and asecond coil 212. In this example, the puck 204 is communicativelycoupled (e.g., wirelessly coupled) to an analyzer 216. Additionally oralternatively, the first coil 210 and the second coil 212 arecommunicatively coupled to an analyzer 216. According to the illustratedexample, the sport tracking system 200 is used to determine whetherand/or at what time an entire length/diameter of the puck 204 hasentered (e.g., passed a front plane of) a zone of interest 217 definedby the goal frame 202. Numerous examples of sport implements, which areshown as pucks, but can be any ball or the like, are described below indetail below in connection with FIGS. 6A-6C.

To determine whether the entire length of the puck 204 has entered thezone of interest 217, a change in a magnetic field and/or a magneticfield measurement exceeding a threshold is detected (e.g., detected bythe puck 204) as the puck 204 moves past the first coil 210 and/or thesecond coil 212. In this example, the first coil and the second coil 212generate a magnetic field due to current passing therethrough. Theexample puck 204 includes a magnet and/or coil that senses and/or varies(e.g., passively varies) the magnetic field generated by the first coil210 and/or the second coil 212. For example, the puck 204 may sense amagnetic field gradient of the generated magnetic field. According tothe illustrated example, a first peak 218 a in the magnetic field (e.g.,a high magnetic field differential and/or change in the magnetic field)is measured/observed when the puck 204 and/or a center axis of the puck204 passes the first coil 210. Similarly, a second peak 218 b ismeasured/observed when the puck 204 and/or the center axis of the puck204 passes the second coil 204. As a result, the analyzer 216 determineswhether/when the puck 204 has fully entered the zone of interest 217. Insome examples, this determination is at least partially based on a knowndiameter/length of the puck 204. In other words, in this example,detecting both of the peaks 218 a, 218 b enables a determination ofwhether the entire puck 204 has entered the zone of interest 217.

In some examples, the first coil 210 and the second coil 212 aregenerally parallel and spaced by a distance sufficient (e.g., relativeto the diameter of the puck 204) to precisely determine whether the puck204 has fully entered the zone of interest 217. In some examples, aspeed and/or velocity of the puck 204 is also determined. In some suchexamples, a time differential between the first peak 218 a and thesecond peak 218 b is used to calculate a speed of the puck 204. In someexamples, the puck 204 has a coil and/or magnet that causes an upwarddipole to be formed (upward in the view of FIG. 2). In some examples,the puck 204 has a sensor (e.g., a magnetic field sensor, an integratedchip magnetic field sensor) to sense the gradient of the magnetic field.Additionally or alternatively, in some examples, the puck 204 isintegral with the analyzer 216.

FIGS. 3A-3D illustrate example coil arrangements that may be implementedto generate magnetic fields with relatively large magnetic fieldgradients so that an object of interest such as the example puck 204 canbe tracked with high positional accuracy.

Turning to FIG. 3A, an above-ground (e.g., an above-playing field, anabove-ice) single coil arrangement 300 is shown having curvature inmultiple planes. According to the example of FIG. 3A, the coilarrangement 300 includes a path 304 having a first arcuate portion 305that is generally defined by a first distance (D1) 306, a radius (R2)307 as well as a second distance (D2) 308. In this example, the firstarcuate portion 305 is placed onto the ground. The path 304 of theillustrated example also defines a second arcuate portion 309, which isgenerally orthogonal to the first arcuate portion 305. The examplesecond arcuate portion 309 is defined by the first distance 306, a thirddistance/height (D3) 310 and a radius (R1) 311.

Turning to FIG. 3B, an example dual coil arrangement 320 is shown. Incontrast to the example coil arrangement 300 described above inconnection with FIG. 3A, multiple coils are used in the example of FIG.3B. In particular, the dual coil arrangement includes a first coil 322and a second coil 324, both of which exhibit a generally rectangularshape defined by a first length/height (D3) 326 and a second length (D1)327. In particular, the generally rounded rectangular shape of the firstcoil 322 and the second coil 324 may be based on an opening of a goal(e.g., the coil arrangement encompasses uprights as well as a crossbar).In this example, the first coil 322 and the second coil 324 havegenerally identical paths/curvatures to one another. In other words, thesecond coil 324 mirrors the first coil 322. The second coil 324 isoffset (e.g., on a parallel offset plane) from the first coil 322. As aresult, the first coil 322 and the second coil 324 of the illustratedexample define a region 328 (shown as dotted in the view of FIG. 3B)therebetween having a relatively high magnetic flux gradient.

In some examples, current flowing through the first coil 322 flows inphase shift (e.g., in an opposite direction, out of phase, etc.) fromthat of the second coil 324. In some examples, the second coil 324traverses a path that is distinct from the first coil 322 (e.g., has atleast one different length from the first length 326 and/or the secondlength 327). Additionally or alternatively, the magnitude of currentflowing through the second coil 324 may be different from that flowingthrough the first coil 322.

Turning to FIG. 3C, an example multiple coil arrangement 330 is shown.The coil arrangement 330 of the illustrated example includes a firstcoil 332 and a second coil 334. Similar to the example coil arrangement320 of FIG. 3B, the first coil 332 and the second coil 332 followgenerally parallel offset paths relative to one another. However, incontrast to the example arrangement 320 of FIG. 3B, the first coil 332and the second coil 334 both have multiple arcuate curves defined inmultiple planes. In this example, the first coil 332 and the second coil334 follow paths generally defined by a first distance/width (D1) 335, asecond distance/depth (D2) 336 and a third distance/height (D3) 338. Asa result, the coil arrangement 330 may be mounted and/or placed alongmultiple components of a goal post, for example, including a rearportion of the goal post.

FIG. 3D illustrates yet another example coil arrangement 340, which issimilar to the coil arrangement 330 described above in connection withFIG. 3C. According to the illustrated example, the coil arrangement 340includes a first coil 342 and a second coil 344, both of which generallydefine rounded rectangular shaped loops disposed in different planes(e.g., orthogonal planes).

FIG. 4 illustrates another example sport tracking system 400 constructedin accordance with the teachings of this disclosure. In contrast to theexample coil arrangements/configurations 300, 320, 330, 340 describedabove in connection with FIGS. 3A-3D which utilize looped loopssurrounding a goal or goal opening (e.g., surrounding overall structuressuch a goal opening), the example tracking system 400 of FIG. 4 utilizesdiscrete and/or independent coil segments/circuits arranged about thegoal. In particular, the sport tracking system 400 of the example ofFIG. 4 includes a goal frame 401 supporting multiple closed coils (e.g.,discrete coil segments) 402 (shown as coils 402 a-402 h). The coils 402of the illustrated example detect a presence of the puck 204 as it movesinto and/or within a zone of interest 410 defined by a goal line 412. Inthis example, the tracking system 400 includes an analyzer 416. In thisexample, the coil 402 each have a respective voltmeter and/or ammeter.

To detect a presence of the puck 204 and/or whether an entirelength/diameter of the puck 204 has entered the zone of interest 410,the coils 402 generate a magnetic field using a constant current and/ora constant voltage. When the puck 204 is proximate and/or enters thezone of interest 410, the coils 402 detect a change in current and/orvoltage caused by the relative proximity of the puck 204 tocorresponding one(s) of the coils 402 as the puck 204 moves into orwithin the zone of interest 410. In particular, multiple measurementsfrom the coils 402 of the illustrated example are used by the analyzer416 to calculate a position of the puck 204 and/or whether an entirelength of the puck 204 has passed the goal line 412. In other words, inthis example, measured changes/differentials in current and/or voltagevalues amongst the coils 402 are used to calculate the position of thepuck 204 relative to the frame 401. In this example, the puck 204 isinductively powered by the generated magnetic field from the coils 402.In other examples, the puck 204 is powered by a battery and/or internalcircuitry.

According to the illustrated example, the sport tracking system 400 canalso make a precise determination of a position of the puck 204 inmultiple directions of a three-dimensional coordinate system (e.g., aposition determination in x, y and z dimensions). In this example, theanalyzer 416 utilizes a relative positioning of each of the coils 402along the goal frame 401 in conjunction with magnetic field measurementsfrom a set of the coils 402 to calculate (e.g., via triangulation) aprecise position of the puck 204 at a given time. In some examples, theanalyzer 416 may use a least-squares fit to determine a position of thepuck 204 in three different perpendicular/orthogonal directions of acoordinate system. Additionally or alternatively, the analyzer 416 canalso calculate a velocity (e.g., a velocity vector), an orientation(e.g., in multiple directions), a projectile motion, an accelerationand/or a spin in any axial direction of the puck 204. Additionally oralternatively, the analyzer 416 determines whether a threshold magneticfield and/or magnetic field differential has been measured as the puck204 moves into or within the zone of interest 410.

In some examples, only a subset of the coils 402 generate a magneticfield. In some other examples, the coils 402 do not generate asignificant magnetic field while a coil loop such as the coil 322 isused to generate a high gradient magnetic flux (e.g., the coils 402 areused as magnetic sensors while the coil loop is used to generate asignificant magnetic field). Additionally or alternatively, in someexamples, some of the coils 402 are placed along the goal line 412(e.g., under a surface on which the goal frame 401 sits). In someexamples, the position determination puck is made at 1,000 Hertz (Hz) orfaster. In some examples, a change in current may be measured. In someexamples, at least a portion of the coils 402 are sized and/or powereddifferently from the other coils 402 to adapt sensitivity and/ordetection range based on varying applications and/or desired needs.

While eight coils are shown in the illustrated example of FIG. 4, anyappropriate number (e.g., two, ten, fifty, one hundred, etc.) of thecoils 402 may be used based on the application, speed of an object ofinterest, whether a separate loop coil is used to generate the magneticfield instead of sensing coils, etc. Examples disclosed herein may beimplemented using alternating current (AC) or direct current (DC) togenerate the magnetic fields.

FIG. 5 is a graph 500 with three positional axes depicting a highlylocalized magnetic field that may be generated by one or more of theexamples disclosed herein. In this example, the magnetic field isgenerated using AC current in a coil disposed around an opening of agoal, as depicted in FIGS. 3A-3D (e.g., looping along a cross bar anduprights). According to the illustrated example, sensor coils and/ormagnetic sensors (e.g., discrete magnetic sensors arranged along theopening of the goal) 502 monitor and/or generate a magnetic flux plane504 with a large magnetic field gradient. In this example, the fluxplane 504 is generated at a face of a goal. In some examples, the sensor502 may be used to determine a position (e.g., a three-dimensionalposition) of the puck 204, which may be passively or actively powered.

In this example, the magnetic puck 204 includes a magnet and/or coilthat varies (e.g., passively varies) the magnetic field around theopening of a goal. In some examples, the analyzer 216, 416 utilizes thesensor 502 measurements (e.g., the change of magnetic field) tocalculate (e.g., via triangulation) a precise position of the puck 204at a given time. In some examples, the analyzer 216, 416 may use aleast-squares fit to determine a position of the puck 204 in threedifferent perpendicular/orthogonal directions of a coordinate system.Additionally or alternatively, the analyzer 216, 416 calculates avelocity (e.g., a velocity vector), an orientation (e.g., in multipledirections), a projectile motion, a speed and/or a spin in any axialdirection of the puck 204.

FIGS. 6A-6C illustrate example sport implements that may be used inexamples disclosed herein. Any of the examples associated with FIGS.6A-6C may be used to implement the puck 204 shown above in connectionwith FIGS. 2, 4 and/or 5.

Turning to FIG. 6A, an example puck 600 is shown. The puck 600 of theillustrated example includes a body (e.g., a housing structure) 602 anda coil (e.g., a passively inductive coil) 604, which is disposedproximate a center axis 610 of the puck 600. According to theillustrated example, the coil 604 defines a magnetic dipole 612, whichcan be used by any of the examples disclosed herein to locate a centerof the puck 600 and/or an orientation of the puck 600. In some examples,the puck 600 includes an additional coil 614 with a correspondingoff-center axis 616 and a respective dipole 617. In examples where theadditional coil 614 is utilized instead of only the single coil 604,additional determination(s) of orientation, position and/or angularvelocity of the example puck 600 may be made. For example, if the puck600 is spinning about the center axis 610, measuring changes in amagnetic field caused by the second coil 614 enables determination ofthe spin direction and/or spin rate of the puck 600 about the axis 610.While the coil 612 and the coil 614 are oriented generally parallel inthis example, in some other examples, the coil 614 is positioned in adifferent orientation from the coil 604.

In this example, the puck 600 is passively powered and does notnecessitate internal powering and/or internal circuitry. However, inother examples, the puck 600 includes a magnetic field circuit 618,which includes a power source 622 in some examples (e.g., for activelypowered examples), a sensor interface 624 and a transmitter (e.g., aradio transmitter). In some such examples, the coil 604 acts as a sensorby measuring a magnetic field gradient, magnetic field peak(s) and/orvalue as the puck 600 travels through a relatively large magnetic fieldgradient. In such examples, the sensor interface 624 measures and/oranalyzes magnetic field measurements from the coil 604 (e.g., determinesmeasured peaks in measured magnetic field values). In some examples, thetransmitter 626 may be used to transmit the magnetic field measurementsand/or determinations as the puck moves through a region having amagnetic field that exceeds a threshold, for example. In some examples,the sensor interface 624 may be a standalone magnetic sensor (e.g.,independent from the coil 604), which measures the magnetic field in oneto three dimensions, regardless of whether the coil 604 is present.

FIG. 6B illustrates an example puck 640, which may bepassively/inductively powered or internally powered. According to theillustrated example, the puck 640 includes three coils 642 a, 642 b, 642c. In this example, the coils 642 a, 642 b, 642 c are orientedorthogonally to one another. In particular, the central axes of thecoils 642 a, 642 b, 642 c are perpendicular. As such, the magneticdipoles of the coils 642 a, 642 b, 642 c are also perpendicular. Inexamples where the puck 640 is actively powered, the puck 650 may alsoinclude a power source (e.g., a battery, a solar cell, a fly wheel,etc.) 644.

In this example, the coils 642 a, 642 b, 642 c are identical to oneanother. However, in other examples, the coils 642 a, 642 b, 642 c aredistinct. In some examples, the puck 640 may also include the magneticfield circuit 618 described above in connection with FIG. 6A. In someexamples, the coils 642 a, 642 b, 642 c are co-molded and/or over-moldedinto the puck 640.

Turning to FIG. 6C, yet another example puck 650 is shown. The examplepuck 650 includes a permanent magnet 652 with a corresponding dipole656. In this example, the magnet 652 is disposed proximate and/or at adiametric center axis of the puck 650 (e.g., a center axis of the magnet652 is aligned with a geometric center and/or center axis of the puck650). In some examples, the puck 650 also includes a second permanentmagnet 660 with a corresponding second dipole 670. As described above inconnection with the additional coil 614 of FIG. 6A, the second magnet660 can be used for further determination(s) of orientation and/or spin.

While two magnets are shown in the example of FIG. 6C, any appropriatenumber of magnets may be used (e.g., four, six, fifteen, fifty, etc.)dependent on the application. While discrete magnets are shown in thisexample, in some examples, the magnetic characteristics of the puck 650may be defined by embedded magnetic materials along portion(s) of thepuck 650 (e.g., co-molded or over-molded magnetic materials disposed inportions of the puck 650). In some examples, the entire puck 650 iscomposed of magnetic material(s) (e.g., magnetic materials oriented todefine an appropriate magnetic dipole relative to an overallstructure/shape of the puck 650).

FIG. 7 illustrates an example implementation of the analyzer 216 or theanalyzer 416 of FIGS. 2 and/or 4. The analyzer 216, 416 of theillustrated example includes a tracker 702, which includes a magneticfield analyzer 704, a sensor interface 706, a database 707, atransmitter/receiver (e.g., a transceiver) 708 and a rule analyzer 709.In some examples, the tracker 702 also includes an antenna 710 incommunication with the transmitter/receiver 708. In this example, thesensor interface 706 is communicatively coupled to a measuring coilinterface 712. Further, in some examples, the example antenna 710 is inwireless communication with the magnetic field circuit 618 of the puck600. In some examples, the analyzer 216, 416 also includes an output(e.g., a light, a bulb, a display, etc. 716). In some examples, themagnetic field circuit 618 includes magnetic field sensor(s)

In operation, the example measuring coil interface 712 measures amagnetic field, magnetic field peaks and/or a change in a generatedmagnetic field (e.g., over a time duration) that is triggered bymovement of the puck 600 within the vicinity of the coils describedabove to determine whether the puck 600 (e.g., the object of interest)has entered a zone of interest. Alternatively, in some examples, thepuck 600 measures the magnetic field and/or a change in the magneticfield. The measuring coil interface 712 of the illustrated examplerelays the magnetic field measurement(s) from the coil(s) to the sensorinterface 706. In some examples, the measuring coil interface 712measures magnetic field measurements at multiple magnetic field sensors(e.g., any of the magnetic field coils described above). Thesemeasurements are used by the magnetic field analyzer 704 to calculate aposition of the puck 600. In some examples, the magnetic field analyzer704 accesses the database 707 to obtain information related toindividual sensor placement along the zone of interest so that a leastsquares analysis may be performed to triangulate the location of thepuck 600. In some examples, a reiterative process is used by themagnetic field analyzer to verify the calculated position of the puck500. In some examples, the rule analyzer 708 receives location data(e.g., locational data related to time) to make conditionaldeterminations based on game/sport rules, such as whether to signal agoal or the like has occurred (e.g., an entire length of the puck 600has entered a goal and/or a zone of interest associated with the goal).

In some examples, the magnetic field analyzer 704 utilizes magneticfield measurements made at the puck 600 and transmitted to the tracker702. In such examples, at least one coil of the puck 600 (e.g., the coil604) is used to measure a magnetic field that exceeds a threshold and/ormultiple magnetic field peaks encountered and the puck 600 relays thiscorresponding information/data to the tracker 702 by transmitting radiofrequency signals from the magnetic field circuit 618 to the antenna710. Additionally or alternatively, the magnetic field analyzer 704 ofthe illustrated example utilizes measurements from at least one coilcommunicatively coupled to the measuring coil interface 712 inconjunction with the magnetic field measurements from the puck 600 todetermine a position and/or orientation of the puck 600.

In this example, the rule analyzer 709 utilizes data analyzed and/orprocessed at the magnetic field analyzer to make a conditionaldetermination. As such, the rule analyzer 709 of the illustrated exampledetermines whether a goal has occurred according to an appropriate ruleset and outputs this determination. In some examples, this output isimplemented as a displayed light and/or flashing at the output 716.

While an example manner of implementing the analyzer 216, 416 of FIGS. 2and/or 4 is illustrated in FIG. 7, one or more of the elements,processes and/or devices illustrated in FIG. 7 may be combined, divided,re-arranged, omitted, eliminated and/or implemented in any other way.Further, the example tracker 702, the example magnetic field analyzer704, the example sensor interface 706, the example database 707, theexample transmitter/receiver 708, the example rule analyzer 709, theexample measuring coil interface 712 and/or, more generally, the exampleanalyzer 216, 416 of FIG. 7 may be implemented by hardware, software,firmware and/or any combination of hardware, software and/or firmware.Thus, for example, any of the example tracker 702, the example magneticfield analyzer 704, the example sensor interface 706, the exampledatabase 707, the example transmitter/receiver 708, the example ruleanalyzer 709, the example measuring coil interface 712 and/or, moregenerally, the example analyzer 216, 416 could be implemented by one ormore analog or digital circuit(s), logic circuits, programmableprocessor(s), application specific integrated circuit(s) (ASIC(s)),programmable logic device(s) (PLD(s)) and/or field programmable logicdevice(s) (FPLD(s)). When reading any of the apparatus or system claimsof this patent to cover a purely software and/or firmwareimplementation, at least one of the example analyzer 216, 416, theexample tracker 702, the example magnetic field analyzer 704, theexample sensor interface 706, the example database 707, the exampletransmitter/receiver 708, the example rule analyzer 709, and/or theexample measuring coil interface 712 is/are hereby expressly defined toinclude a tangible computer readable storage device or storage disk suchas a memory, a digital versatile disk (DVD), a compact disk (CD), aBlu-ray disk, etc. storing the software and/or firmware. Further still,the example analyzer 216, 416 of FIG. 7 may include one or moreelements, processes and/or devices in addition to, or instead of, thoseillustrated in FIG. 7, and/or may include more than one of any or all ofthe illustrated elements, processes and devices.

Flowcharts representative of example machine readable instructions,which may be implemented by the example analyzer 216, 416 of FIG. 7 isshown in FIGS. 8 and 9. In this example, the machine readableinstructions comprise a program for execution by a processor such as theprocessor 1012 shown in the example processor platform 1000 discussedbelow in connection with FIG. 10. The program may be embodied insoftware stored on a tangible computer readable storage medium such as aCD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), aBlu-ray disk, or a memory associated with the processor 1012, but theentire program and/or parts thereof could alternatively be executed by adevice other than the processor 1012 and/or embodied in firmware ordedicated hardware. Further, although the example program is describedwith reference to the flowcharts illustrated in FIGS. 8 and 9, manyother methods of implementing the example sport implement trackingsystem 700 may alternatively be used. For example, the order ofexecution of the blocks may be changed, and/or some of the blocksdescribed may be changed, eliminated, or combined.

As mentioned above, the example processes of FIGS. 8 and 9 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a tangible computer readable storagemedium such as a hard disk drive, a flash memory, a read-only memory(ROM), a compact disk (CD), a digital versatile disk (DVD), a cache, arandom-access memory (RAM) and/or any other storage device or storagedisk in which information is stored for any duration (e.g., for extendedtime periods, permanently, for brief instances, for temporarilybuffering, and/or for caching of the information). As used herein, theterm tangible computer readable storage medium is expressly defined toinclude any type of computer readable storage device and/or storage diskand to exclude propagating signals and to exclude transmission media. Asused herein, “tangible computer readable storage medium” and “tangiblemachine readable storage medium” are used interchangeably. Additionallyor alternatively, the example processes of FIGS. 8 and 9 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a non-transitory computer and/ormachine readable medium such as a hard disk drive, a flash memory, aread-only memory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media. As usedherein, when the phrase “at least” is used as the transition term in apreamble of a claim, it is open-ended in the same manner as the term“comprising” is open ended.

The example program 800 of FIG. 8 begins as an object of interest suchas a sport implement (e.g., the puck 204, the puck 600, the puck 640,the puck 650) is in use during a game, for example, and a determinationis to be made as to whether the puck has entered a zone of interest(e.g., the zone of interest 217, the zone of interest 410), which isdefined by a goal area in this example.

A magnetic field along with its corresponding magnetic flux gradient isgenerated in the zone of interest (block 802). According to theillustrated example, multiple coils such as the coils 402 are used togenerate the magnetic field with a relatively high magnetic fluxgradient. Alternatively, in some examples, a single coil is used insteadto generate the magnetic field.

Next, the magnetic field is measured at the measuring coil interface 712and/or the sensor interface 706 as the object of interest moves into orwithin the zone of interest (block 804). Additionally or alternatively,magnetic field peaks are measured and/or timed (e.g., a time historymagnetic field peaks). In this example, the magnetic field is measuredat a coil (e.g., the coil 300) of the goal area that is communicativelycoupled to the measuring coil interface 712. Alternatively, the magneticfield is measured at multiple coils (e.g., the coils 402, the coil 322,the coil 324, the coil 332, the coil 334, the coils 342 a, 324 b, 342 c,the coil 344) of the goal area. However, in other examples, the magneticfield is measured at a coil of the object of interest, such as describedwith the example puck 600 of FIG. 6. In some examples, the magneticfield is measured at a rate exceeding 1000 hertz (Hz).

The magnetic field analyzer 704 of the illustrated example thendetermines whether the measured magnetic field exceeds a threshold(block 806). According to the illustrated example, if the examplemagnetic field analyzer determines that measured magnetic gradientexceeds the threshold (block 806), control returns to block 804.Otherwise, control proceeds to block 808.

The magnetic field analyzer 704 calculates a location of the object ofinterest (block 808). In particular, the example magnetic field analyzer704 utilizes magnetic field strengths, magnetic field peak timingsand/or magnetic field measurements from multiple sensors (e.g., multiplecoils) to calculate and/or estimate the position. Additionally oralternatively, the magnetic field analyzer 704 determines, a speed, avelocity, an orientation, a rotation and/or spin of the object ofinterest.

In some examples, the magnetic field analyzer 704 calculates an expectedfield value is (block 810). For example, the magnetic field analyzer 704predicts expected magnetic field signal values associated withrespective sensors based on the calculated location.

Next, the magnetic field analyzer 704 compares an expected field valueto the measured magnetic field value (block 812).

The magnetic field analyzer 704 then determines whether the measuredvalue is within an expected margin (e.g., an expected error margin)relative to an expected value (block 814). In particular, thisdetermination/comparison is used to evaluate the calculated positionand/or further refine the calculation in some examples (e.g., via arecursive least square solver). If the measured value is not within themargin (block 814), control returns to block 808. Otherwise, control oferror proceeds to block 818.

In this example, after a measured value corresponding to the calculatedlocation is within the error margin (e.g., no more further solving ofthe location of the object of interest is needed), the magnetic fieldanalyzer 704 calculates at least one of the location (e.g., an updatedlocation), a velocity, a rotation and/or an orientation of the object ofinterest (block 818).

In some examples, the rule analyzer 709 applies rules for a conditionaldetermination (block 820). For example, the rule analyzer 709 utilizeslocational data and/or time-based locational history data from themagnetic field analyzer 704 to apply rules (e.g., sport specific rules)to determine whether a condition is met. In one example, a rule that isanalyzed by the rule analyzer 709 is whether an entire length of theobject of interest is within the zone of interest. As a result, theoutput 716 may be triggered.

According to the illustrated example of FIG. 8, the rule analyzer 709determines whether a game has ended and/or a power condition hasoccurred (e.g., power has been turned off) (block 822). If the game hasnot ended (block 822), control returns to block 804. Otherwise, theprocess ends.

The example program 900 of FIG. 9 may be executed to calibrate theexample analyzer 216, 416 of FIG. 7 and/or an object of interest. Inthis example, magnetic sensors, which may include multiple coil sensors(e.g., the coils 402, the coil 322, the coil 324, the coil 332, the coil334, the coil 342, the coil 344) and an object of interest (e.g., thepuck 204, the puck 600, the puck 640, the puck 650) are to be calibratedto ensure highly accurate position measurements of the object ofinterest.

At block 902, the magnetic field analyzer 704 calibrates magneticsensors (block 902). In particular, position offsets of the sensorsrelative to a reference frame are accounted for by placing a magneticfield source in a known position relative to the magnetic sensors. Insuch examples, each of the coils 402 are measured and/or analyzed by themagnetic field analyzer 704 for magnetic field variations based on theirrelative positions along the goal frame 401. In some examples,background magnetic fields (e.g., from the Earth) are also accountedfor. Additionally or alternatively, noise from equipment and/or wiringare also taken into account. In this example, the calibration data ofthe multiple magnetic sensors are stored in the example database 707 ofFIG. 7.

Next, the object of interest is calibrated (block 904). For example, amisalignment of a dipole from a center axis of the object of interestmay be accounted for (e.g., the coil 604 of the puck 600 beingmisaligned) by measuring and/or characterizing an overall shape of theobject of interest and determining where its corresponding magneticfield and/or dipole are located relative to its overall shape.Additionally or alternatively, aberrations in the shape of the object ofinterest are also taken into account (e.g., a slight shape irregularityof the puck 600). In this example, calibration data related to theobject of interest is also stored in the database 707 for later offsetcalculations. In some examples, a sensor (e.g., a magnetic sensorembedded in the object of interest) can be calibrated to account for aninitial operating condition (e.g., temperature, field conditions, etc.).

In some examples, identifiers and/or associated data (e.g., fieldstrength, etc.) of each magnetic field sensor is stored in the database707 by the magnetic coil interface 712 (block 906). When everything iscalibrated, the process ends.

FIG. 10 is a block diagram of an example processor platform 1000 capableof executing the instructions of FIGS. 8 and 9 to implement the analyzer216, 416 of FIG. 7 The processor platform 1000 can be, for example, aserver, a personal computer, a mobile device (e.g., a cell phone, asmart phone, a tablet such as an iPad™), or any other type of computingdevice.

The processor platform 1000 of the illustrated example includes aprocessor 1012. The processor 1012 of the illustrated example ishardware. For example, the processor 1012 can be implemented by one ormore integrated circuits, logic circuits, microprocessors or controllersfrom any desired family or manufacturer.

The processor 1012 of the illustrated example includes a local memory1013 (e.g., a cache). The processor 1012 of the illustrated exampleimplements the example magnetic field analyzer 704 and the example ruleanalyzer 709. The processor 1012 of the illustrated example is incommunication with a main memory including a volatile memory 1014 and anon-volatile memory 1016 via a bus 1018. The volatile memory 1014 may beimplemented by Synchronous Dynamic Random Access Memory (SDRAM), DynamicRandom Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM)and/or any other type of random access memory device. The non-volatilememory 1016 may be implemented by flash memory and/or any other desiredtype of memory device. Access to the main memory 1014, 1016 iscontrolled by a memory controller.

The processor platform 1000 of the illustrated example also includes aninterface circuit 1020. The interface circuit 1020 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), and/or a PCI express interface. Theinterface circuit 1020 of the example implements the sensor interface706 and the measuring coil interface 712.

In the illustrated example, one or more input devices 1022 are connectedto the interface circuit 1020. The input device(s) 1022 permit(s) a userto enter data and commands into the processor 1012. The input device(s)can be implemented by, for example, an audio sensor, a microphone, acamera (still or video), a keyboard, a button, a mouse, a touchscreen, atrack-pad, a trackball, isopoint and/or a voice recognition system.

One or more output devices 1024 are also connected to the interfacecircuit 1020 of the illustrated example. The output devices 1024 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay, a cathode ray tube display (CRT), a touchscreen, a tactileoutput device, a printer and/or speakers). The interface circuit 1020 ofthe illustrated example, thus, typically includes a graphics drivercard, a graphics driver chip or a graphics driver processor.

The interface circuit 1020 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem and/or network interface card to facilitate exchange of data withexternal machines (e.g., computing devices of any kind) via a network1026 (e.g., an Ethernet connection, a digital subscriber line (DSL), atelephone line, coaxial cable, a cellular telephone system, etc.). Inthis example, the transmitter/receiver 708 is implemented by theinterface circuit 1020.

The processor platform 1000 of the illustrated example also includes oneor more mass storage devices 1028 for storing software and/or data.Examples of such mass storage devices 1028 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and digital versatile disk (DVD) drives. In this example, massstorage devices 1028 are implemented by the database 707.

The coded instructions 1032 of FIGS. 8 and 9 may be stored in the massstorage device 1028, in the volatile memory 1014, in the non-volatilememory 1016, and/or on a removable tangible computer readable storagemedium such as a CD or DVD.

From the foregoing, it will be appreciated that methods, apparatus andarticles of manufacture have been disclosed which enable acost-effective implementation of highly accurate (e.g., withinmillimeters) and quick location tracking systems/devices.

An example sporting goal includes at least two coils arranged along azone of interest to generate a magnetic field, a sensor to measure achange in the magnetic field as a sport implement moves within or intothe zone of interest, and a processor to determine a position of thesport implement based on the measured change in the magnetic field.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent. While the examples shown herein are relatedto sports (e.g., hockey, football, soccer, etc.), the examples disclosedherein may be applied to any application in which a location, speed,orientation and/or spin are to be determined in a very quick manner(e.g., industrial or commercial locational tracking, auto-racing ordrone racing finish lines, etc.).

What is claimed is:
 1. An apparatus comprising: a first coil in a first loop that defines at least a portion of an opening of a sporting goal and at least a portion of a perimeter of a base of the sporting goal; a second coil in a second loop that mirrors the first loop at the opening of the sporting goal and the perimeter of the base, the second loop offset from the first loop at the opening of the sporting goal and at the perimeter of the base, the first coil to be energized with first current having a first phase, the second coil to be energized with second current having a second phase, the first phase different from the second phase; at least one sensor to measure changes in magnetic fields associated with the first and second coils as a sport implement moves within or into the opening of the sporting goal; and at least one processor to determine a position of the sport implement based on the measured changes.
 2. The apparatus as defined in claim 1, wherein the at least one processor is to determine at least one of a velocity, an acceleration, an orientation, a spin velocity, or a projectile path of the sport implement.
 3. The apparatus as defined in claim 1, wherein the at least one processor is to determine whether a trailing edge of the sport implement has entered the opening.
 4. The apparatus as defined in claim 1, wherein the first phase is 180 degrees from the second phase.
 5. A method comprising: simultaneously energizing first and second coils to generate magnetic fields, the first and second coils along a zone of interest of a sporting goal, the first coil in a first loop that defines at least a portion of an opening of the sporting goal and at least a portion of a perimeter of a base of the sporting goal, the second coil in a second loop that mirrors the first loop at the opening of the sporting goal and at the perimeter of the base, the second loop offset from the first loop at the opening of the sporting goal and at the perimeter of the base, the first coil to be energized with first current having a first phase, the second coil to be energized with second current having a second phase, the first phase different from the second phase, the second coil in a third loop that defines a perimeter of a base of the sporting goal; determining magnetic field changes associated with the first and second coils as a sport implement moves into or within the zone of interest; and calculating, by executing an instruction with at least one processor, a position of the sport implement based on the determined magnetic field changes.
 6. The method as defined in claim 5, further including determining, by executing an instruction with the at least one processor, at least one of a velocity, an acceleration, an orientation, a spin, or a projectile path of the sport implement.
 7. The method as defined in claim 5, further including determining, by executing an instruction with the at least one processor, whether a trailing edge of the sport implement has entered the zone of interest.
 8. The method as defined in claim 5, wherein the calculating of the position is based on measuring multiple peaks measured in the magnetic field.
 9. The method as defined in claim 5, wherein the first phase is 180 degrees from the second phase.
 10. The apparatus as defined in claim 1, further including a third coil in a third loop, the third coil to be energized with a third current having a third phase.
 11. The apparatus as defined in claim 10, wherein the third phase is 180 degrees from at least one of the first or second phases.
 12. The apparatus as defined in claim 10, wherein the third phase is different from the first and second phases.
 13. The apparatus as defined in claim 10, wherein the third loop is orthogonal to at least one of the first loop or the second loop.
 14. The apparatus as defined in claim 10, wherein the first, second and third coils are simultaneously energized.
 15. The apparatus as defined in claim 1, wherein the at least one sensor is implemented in the sport implement.
 16. The apparatus as defined in claim 1, wherein at least one of the first or second coils includes discrete coil loop circuits.
 17. The apparatus as defined in claim 1, wherein the first loop or the second loop defines uprights and at least one horizontal bar of the sporting goal. 